import router from './index'
import { getToken } from '@/utils/token'
// 全局前置路由守卫
router.beforeEach((to, from, next) => {
  // 只要发生了跳转，这样就会决定跳不跳
  // to:要去的路径相关信息对象
  // from:要离开的路由页面，相关路由信息
  // next:next()就放行，next(false)原地带着next('/地址)中断跳转直接切回指定的路径
  // 目标：已经登陆了，就不能进入登录页
  // 前端只能判断有无token,token的有效性，我们有些接口会在后端判断，无效会返回401,axios响应拦截会直接跳转到登录页
  if (getToken() !== null && to.path === '/login') {
    next('/')
  } else {
    next()
  }
})
// 全局后置钩子
router.afterEach((to, from) => {
  // 如果当前的路由的元信息中，isRecord 的值为 true
  if (to.meta.isRecord) {
    setTimeout(() => {
      // 则把元信息中的 top 值设为滚动条纵向滚动的位置
      window.scrollTo(0, to.meta.top)
    }, 0)
  }
})
